using System;
using System.Collections.Generic;
using ns26;
using ns27;
using Triton.Game.Mono;

namespace Triton.Game.Mapping
{
	[Attribute38("SwitchAccountMenu")]
	public class SwitchAccountMenu : ButtonListMenu
	{
		public static int TEMPORARY_ACCOUNT_SHOWN_LIMIT => MonoClass.smethod_6<int>(TritonHs.MainAssemblyPath, "", "SwitchAccountMenu", "TEMPORARY_ACCOUNT_SHOWN_LIMIT");

		public Transform m_menuBone => method_3<Transform>("m_menuBone");

		public List<UIBButton> m_temporaryAccountButtons => method_3<Class271<UIBButton>>("m_temporaryAccountButtons")?.method_25();

		public SwitchAccountMenu(IntPtr address, string className)
			: base(address, className)
		{
		}

		public SwitchAccountMenu(IntPtr address)
			: this(address, "SwitchAccountMenu")
		{
		}

		public new void Awake()
		{
			method_8("Awake");
		}

		public new void OnDestroy()
		{
			method_8("OnDestroy");
		}

		public new List<UIBButton> GetButtons()
		{
			return method_14<Class271<UIBButton>>("GetButtons", Array.Empty<object>())?.method_25();
		}

		public void OnLogInButtonPressed(UIEvent e)
		{
			method_8("OnLogInButtonPressed", e);
		}

		public void OnTemporaryAccountButtonPressed(UIEvent e)
		{
			method_8("OnTemporaryAccountButtonPressed", e);
		}
	}
}
